package com.kehutong.charge.entity;

import com.kehutong.charge.util.enums.ResidentsTypeEnum;
import com.kehutong.common.entity.DataEntity;
import org.coraframework.json.annotation.JSONField;
import org.coraframework.orm.annotation.Column;
import org.coraframework.orm.annotation.Table;
import org.coraframework.orm.util.IDType;

import java.math.BigDecimal;

/**
 * @program: kht
 * @description: ChargeArrears
 * @author: joneron
 * @create: 2021/7/2
 **/
@Table(value="t_charge_arrears", comment="欠费管理表",multi = true, idType = IDType.TIMESTAMP, engine = "innodb")
public class ChargeArrears extends DataEntity {

    protected ChargeArrears(String id) {
        super(id);
    }

    @Column(comment="账单项编号")
    private String billItemNo;

    @Column(comment="账单地址")
    private String chargeAddress;

    @Column(comment="账单年月")
    private String billYearMonth;

    @Column(comment="账单金额")
    private BigDecimal billAmount;

    @Column(comment="议价金额")
    private BigDecimal negotiateAmount;

    @Column(comment="缴费时间")
    private String chargeDate;

    @Column(comment="应付金额")
    private BigDecimal payableAmount;

    @Column(comment="缴费人")
    private String chargeName;

    @Column(comment="住户类型")
    private ResidentsTypeEnum residentsType;

    @Column(comment="小区编号")
    private String communityNo;

    @Column(comment="小区名称")
    private String communityName;

    @Column(comment="房屋编号")
    private String houseNo;

    @Column(comment = "状态：0未处理，1处理")
    private boolean status;

    @JSONField(serialize = false)
    @Column(comment = "逻辑删除")
    private boolean deleted;

    @Column(comment = "创建人")
    private String createName;

    public String getBillItemNo() {
        return billItemNo;
    }

    public void setBillItemNo(String billItemNo) {
        this.billItemNo = billItemNo;
    }

    public String getChargeAddress() {
        return chargeAddress;
    }

    public void setChargeAddress(String chargeAddress) {
        this.chargeAddress = chargeAddress;
    }

    public String getBillYearMonth() {
        return billYearMonth;
    }

    public void setBillYearMonth(String billYearMonth) {
        this.billYearMonth = billYearMonth;
    }

    public BigDecimal getBillAmount() {
        return billAmount;
    }

    public void setBillAmount(BigDecimal billAmount) {
        this.billAmount = billAmount;
    }

    public BigDecimal getNegotiateAmount() {
        return negotiateAmount;
    }

    public void setNegotiateAmount(BigDecimal negotiateAmount) {
        this.negotiateAmount = negotiateAmount;
    }

    public String getChargeDate() {
        return chargeDate;
    }

    public void setChargeDate(String chargeDate) {
        this.chargeDate = chargeDate;
    }

    public BigDecimal getPayableAmount() {
        return payableAmount;
    }

    public void setPayableAmount(BigDecimal payableAmount) {
        this.payableAmount = payableAmount;
    }

    public String getChargeName() {
        return chargeName;
    }

    public void setChargeName(String chargeName) {
        this.chargeName = chargeName;
    }

    public ResidentsTypeEnum getResidentsType() {
        return residentsType;
    }

    public void setResidentsType(ResidentsTypeEnum residentsType) {
        this.residentsType = residentsType;
    }

    public String getCommunityNo() {
        return communityNo;
    }

    public void setCommunityNo(String communityNo) {
        this.communityNo = communityNo;
    }

    public String getCommunityName() {
        return communityName;
    }

    public void setCommunityName(String communityName) {
        this.communityName = communityName;
    }

    public String getHouseNo() {
        return houseNo;
    }

    public void setHouseNo(String houseNo) {
        this.houseNo = houseNo;
    }

    public boolean isStatus() {
        return status;
    }

    public void setStatus(boolean status) {
        this.status = status;
    }

    public boolean isDeleted() {
        return deleted;
    }

    public void setDeleted(boolean deleted) {
        this.deleted = deleted;
    }

    public String getCreateName() {
        return createName;
    }

    public void setCreateName(String createName) {
        this.createName = createName;
    }
}
